<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JSDoc: Global</title>

    <script src="scripts/prettify/prettify.js"> </script>
    <script src="scripts/prettify/lang-css.js"> </script>
    <!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
    <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>

<body>

<div id="main">

    <h1 class="page-title">Global</h1>

    




<section>

<header>
    
        <h2>
        
        </h2>
        
    
</header>

<article>
    <div class="container-overview">
    
        

        


<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>


        
    
    </div>

    

    

    

     

    

    

    

    
        <h3 class="subsection-title">Type Definitions</h3>

        
                
<h4 class="name" id="distribution">distribution</h4>






    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Number</span>


        </li>
    </ul>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>SPE.distributions.BOX</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">Values will be distributed within a box.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>SPE.distributions.SPHERE</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">Values will be distributed within a sphere.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>SPE.distributions.DISC</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">Values will be distributed within a 2D disc.</td>
        </tr>

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="SPE.js.html">SPE.js</a>, <a href="SPE.js.html#line1">line 1</a>
    </li></ul></dd>
    

    

    

    
</dl>






            
                
<h4 class="name" id="Emitter">Emitter</h4>




<div class="description">
    An SPE.Emitter instance.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Object</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="core_SPE.Emitter.js.html">core/SPE.Emitter.js</a>, <a href="core_SPE.Emitter.js.html#line1">line 1</a>
    </li></ul></dd>
    

    

    
    <dt class="tag-see">See:</dt>
    <dd class="tag-see">
        <ul>
            <li><a href="SPE.Emitter.html">SPE.Emitter</a></li>
        </ul>
    </dd>
    

    
</dl>






            
                
<h4 class="name" id="EmitterOptions">EmitterOptions</h4>




<div class="description">
    A map of options to configure an SPE.Emitter instance.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Object</span>


        </li>
    </ul>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>type</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="global.html#distribution">distribution</a></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    BOX
                
                </td>
            

            <td class="description last">The default distribution this emitter should use to control
                        its particle's spawn position and force behaviour.
                        Must be an SPE.distributions.* value.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>particleCount</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    100
                
                </td>
            

            <td class="description last">The total number of particles this emitter will hold. NOTE: this is not the number
                                 of particles emitted in a second, or anything like that. The number of particles
                                 emitted per-second is calculated by particleCount / maxAge (approximately!)</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>duration</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>
|

<span class="param-type">null</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">The duration in seconds that this emitter should live for. If not specified, the emitter
                                        will emit particles indefinitely.
                                        NOTE: When an emitter is older than a specified duration, the emitter is NOT removed from
                                        it's group, but rather is just marked as dead, allowing it to be reanimated at a later time
                                        using `SPE.Emitter.prototype.enable()`.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>isStatic</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">Whether this emitter should be not be simulated (true).</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>activeMultiplier</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    1
                
                </td>
            

            <td class="description last">A value between 0 and 1 describing what percentage of this emitter's particlesPerSecond should be
                                         emitted, where 0 is 0%, and 1 is 100%.
                                         For example, having an emitter with 100 particles, a maxAge of 2, yields a particlesPerSecond
                                         value of 50. Setting `activeMultiplier` to 0.5, then, will only emit 25 particles per second (0.5 = 50%).
                                         Values greater than 1 will emulate a burst of particles, causing the emitter to run out of particles
                                         before it's next activation cycle.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>direction</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    1
                
                </td>
            

            <td class="description last">The direction of the emitter. If value is `1`, emitter will start at beginning of particle's lifecycle.
                                  If value is `-1`, emitter will start at end of particle's lifecycle and work it's way backwards.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>maxAge</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing the particle's maximum age in seconds.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    2
                
                </td>
            

            <td class="description last">A number between 0 and 1 describing the amount of maxAge to apply to all particles.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">A number describing the maxAge variance on a per-particle basis.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>position</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing this emitter's position.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's base position.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's position variance on a per-particle basis.
                                                         Note that when using a SPHERE or DISC distribution, only the x-component
                                                         of this vector is used.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spreadClamp</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing the numeric multiples the particle's should
                                                              be spread out over.
                                                              Note that when using a SPHERE or DISC distribution, only the x-component
                                                              of this vector is used.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>radius</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    10
                
                </td>
            

            <td class="description last">This emitter's base radius.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>radiusScale</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing the radius's scale in all three axes. Allows a SPHERE or DISC to be squashed or stretched.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>distribution</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="global.html#distribution">distribution</a></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    value of the `type` option.
                
                </td>
            

            <td class="description last">A specific distribution to use when radiusing particles. Overrides the `type` option.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's position should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>velocity</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing this particle velocity.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's base velocity.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's velocity variance on a per-particle basis.
                                                         Note that when using a SPHERE or DISC distribution, only the x-component
                                                         of this vector is used.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>distribution</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="global.html#distribution">distribution</a></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    value of the `type` option.
                
                </td>
            

            <td class="description last">A specific distribution to use when calculating a particle's velocity. Overrides the `type` option.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's velocity should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>acceleration</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing this particle's acceleration.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's base acceleration.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's acceleration variance on a per-particle basis.
                          Note that when using a SPHERE or DISC distribution, only the x-component
                          of this vector is used.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>distribution</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="global.html#distribution">distribution</a></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    value of the `type` option.
                
                </td>
            

            <td class="description last">A specific distribution to use when calculating a particle's acceleration. Overrides the `type` option.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's acceleration should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>drag</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing this particle drag. Drag is applied to both velocity and acceleration values.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">A number between 0 and 1 describing the amount of drag to apply to all particles.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">A number describing the drag variance on a per-particle basis.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's drag should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>wiggle</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">This is quite a fun one! The values of this object will determine whether a particle will wiggle, or jiggle, or wave,
                               or shimmy, or waggle, or... Well you get the idea. The wiggle is calculated over-time, meaning that a particle will
                               start off with no wiggle, and end up wiggling about with the distance of the `value` specified by the time it dies.
                               It's quite handy to simulate fire embers, or similar effects where the particle's position should slightly change over
                               time, and such change isn't easily controlled by rotation, velocity, or acceleration. The wiggle is a combination of sin and cos calculations, so is circular in nature.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">A number describing the amount of wiggle to apply to all particles. It's measured in distance.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">A number describing the wiggle variance on a per-particle basis.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>rotation</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing this emitter's rotation. It can either be static, or set to rotate from 0radians to the value of `rotation.value`
                                 over a particle's lifetime. Rotation values affect both a particle's position and the forces applied to it.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>axis</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3(0, 1, 0)
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing this emitter's axis of rotation.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>axisSpread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing the amount of variance to apply to the axis of rotation on
                                                             a per-particle basis.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>angle</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">The angle of rotation, given in radians. If `rotation.static` is true, the emitter will start off rotated at this angle, and stay as such.
                                      Otherwise, the particles will rotate from 0radians to this value over their lifetimes.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>angleSpread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">The amount of variance in each particle's rotation angle.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>static</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">Whether the rotation should be static or not.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>center</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    The value of `position.value`
                
                </td>
            

            <td class="description last">A THREE.Vector3 instance describing the center point of rotation.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's rotation should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>color</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing a particle's color. This property is a "value-over-lifetime" property, meaning an array of values and spreads can be
                              given to describe specific value changes over a particle's lifetime.
                              Depending on the value of SPE.valueOverLifetimeLength, if arrays of THREE.Color instances are given, then the array will be interpolated to
                              have a length matching the value of SPE.valueOverLifetimeLength.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Color()
                
                </td>
            

            <td class="description last">Either a single THREE.Color instance, or an array of THREE.Color instances to describe the color of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    new THREE.Vector3()
                
                </td>
            

            <td class="description last">Either a single THREE.Vector3 instance, or an array of THREE.Vector3 instances to describe the color variance of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's color should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>opacity</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing a particle's opacity. This property is a "value-over-lifetime" property, meaning an array of values and spreads can be
                              given to describe specific value changes over a particle's lifetime.
                              Depending on the value of SPE.valueOverLifetimeLength, if arrays of numbers are given, then the array will be interpolated to
                              have a length matching the value of SPE.valueOverLifetimeLength.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    1
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the opacity of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the opacity variance of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's opacity should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>size</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing a particle's size. This property is a "value-over-lifetime" property, meaning an array of values and spreads can be
                              given to describe specific value changes over a particle's lifetime.
                              Depending on the value of SPE.valueOverLifetimeLength, if arrays of numbers are given, then the array will be interpolated to
                              have a length matching the value of SPE.valueOverLifetimeLength.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    1
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the size of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the size variance of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's size should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>angle</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">An object describing a particle's angle. The angle is a 2d-rotation, measured in radians, applied to the particle's texture.
                              NOTE: if a particle's texture is a sprite-sheet, this value IS IGNORED.
                              This property is a "value-over-lifetime" property, meaning an array of values and spreads can be
                              given to describe specific value changes over a particle's lifetime.
                              Depending on the value of SPE.valueOverLifetimeLength, if arrays of numbers are given, then the array will be interpolated to
                              have a length matching the value of SPE.valueOverLifetimeLength.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the angle of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>spread</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    0
                
                </td>
            

            <td class="description last">Either a single number, or an array of numbers to describe the angle variance of a particle over it's lifetime.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>randomise</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">When a particle is re-spawned, whether it's angle should be re-randomised or not. Can incur a performance hit.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="core_SPE.Emitter.js.html">core/SPE.Emitter.js</a>, <a href="core_SPE.Emitter.js.html#line7">line 7</a>
    </li></ul></dd>
    

    

    

    
</dl>






            
                
<h4 class="name" id="Group">Group</h4>




<div class="description">
    An SPE.Group instance.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Object</span>


        </li>
    </ul>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="core_SPE.Group.js.html">core/SPE.Group.js</a>, <a href="core_SPE.Group.js.html#line1">line 1</a>
    </li></ul></dd>
    

    

    
    <dt class="tag-see">See:</dt>
    <dd class="tag-see">
        <ul>
            <li><a href="SPE.Group.html">SPE.Group</a></li>
        </ul>
    </dd>
    

    
</dl>






            
                
<h4 class="name" id="GroupOptions">GroupOptions</h4>




<div class="description">
    A map of options to configure an SPE.Group instance.
</div>



    <h5>Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Object</span>


        </li>
    </ul>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>texture</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            

            

            <td class="description last">An object describing the texture used by the group.
                <h6>Properties</h6>

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">An instance of THREE.Texture.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>frames</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">A THREE.Vector2 instance describing the number
                                   of frames on the x- and y-axis of the given texture.
                                   If not provided, the texture will NOT be treated as
                                   a sprite-sheet and as such will NOT be animated.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>frameCount</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            
                <td class="default">
                
                    texture.frames.x * texture.frames.y
                
                </td>
            

            <td class="description last">The total number of frames in the sprite-sheet.
                                                                  Allows for sprite-sheets that don't fill the entire
                                                                  texture.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>loop</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            
                <td class="attributes">
                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">The number of loops through the sprite-sheet that should
                                be performed over the course of a single particle's lifetime.</td>
        </tr>

    
    </tbody>
</table>

            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>fixedTimeStep</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">If no `dt` (or `deltaTime`) value is passed to this group's
                                 `tick()` function, this number will be used to move the particle
                                 simulation forward. Value in SECONDS.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>hasPerspective</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether the distance a particle is from the camera should affect
                                   the particle's size.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>colorize</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether the particles in this group should be rendered with color, or
                             whether the only color of particles will come from the provided texture.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>blending</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">One of Three.js's blending modes to apply to this group's `ShaderMaterial`.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>transparent</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether these particle's should be rendered with transparency.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>alphaTest</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">Sets the alpha value to be used when running an alpha test on the `texture.value` property. Value between 0 and 1.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>depthWrite</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether rendering the group has any effect on the depth buffer.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>depthTest</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether to have depth test enabled when rendering this group.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>fog</code></td>
            

            <td class="type">
            
                
<span class="param-type">Boolean</span>


            
            </td>

            

            

            <td class="description last">Whether this group's particles should be affected by their scene's fog.</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>scale</code></td>
            

            <td class="type">
            
                
<span class="param-type">Number</span>


            
            </td>

            

            

            <td class="description last">The scale factor to apply to this group's particle sizes. Useful for
                         setting particle sizes to be relative to renderer size.</td>
        </tr>

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="core_SPE.Group.js.html">core/SPE.Group.js</a>, <a href="core_SPE.Group.js.html#line7">line 7</a>
    </li></ul></dd>
    

    

    

    
</dl>






            
    

    
</article>

</section>




</div>

<nav>
    <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="SPE.Emitter.html">Emitter</a></li><li><a href="SPE.Group.html">Group</a></li><li><a href="SPE.ShaderAttribute.html">ShaderAttribute</a></li><li><a href="SPE.TypedArrayHelper.html">TypedArrayHelper</a></li></ul><h3>Namespaces</h3><ul><li><a href="SPE.html">SPE</a></li><li><a href="SPE.utils.html">utils</a></li></ul><h3><a href="global.html">Global</a></h3>
</nav>

<br class="clear">

<footer>
    Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.3</a> on Sat Nov 14 2015 15:30:50 GMT+0000 (GMT)
</footer>

<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>